﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using CrmContacto.Data;
using CrmContacto.Contracts;
using CrmContacto.Contracts.Contracts.Search;
using CrmContacto.Contracts.Promociones;

namespace CrmContacto.Services.Marketing
{
    public interface IPromocionStrategy
    {
        PromocionResultado CrearPromocion(PtoVentaRegistroCliente customer, bool esNuevo);

        void ValidarAlAsociarPromocion(PtoVentaRegistroCliente customer, bool esNuevo);

        bool FiltrarPromocionEnPdv(CrmContactoEntities ctxCrm, DbAccionDeMarketing accionesDeMarketing, CampaniasActivasSearch search);

        ParticipantesSearchResult GetParticipantes(ParticipantesSearch searchParam);

        string Nombre
        {
            get;            
        }

        int EmpresaId
        {
            get;
            set;
        }        
    }
}
